using System;
using System.Collections.Generic;
using System.Text;
using Castle.ActiveRecord;

namespace EYDIngenieria.ERP.ObjetosDeNegocio.Dominio
{
    [ActiveRecord]
    public class Proveedor:ActiveRecordBase<Proveedor>
    {
            private int id;
            private string razonSocial;
            private string direccion;
            private string telefono;
            private string mail;
            private string contacto;
            private string cuentaCorriente;
            private string bancoCuentaCorriente;
            private string rut;
            private string giro;
            private Boolean activo;

            [Property]
            public Boolean Activo
            {
                get { return activo; }
                set { activo = value; }
            }
        public Proveedor(int id,  string razonSocial,  string direccion,  string telefono,  string mail,  string contacto,  string cuentaCorriente,  string bancoCuentaCorriente,  string rut, string giro)
        {
            this.id = id;
            this.razonSocial = razonSocial;
            this.direccion = direccion;
            this.telefono = telefono;
            this.mail = mail;
            this.contacto = contacto;
            this.cuentaCorriente = cuentaCorriente;
            this.bancoCuentaCorriente = bancoCuentaCorriente;
            this.rut = rut;
            this.giro = giro;
        }

        public Proveedor()
            : this(0, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty)
        {
        }

        [Property]
        public string Giro
        {
            get { return giro; }
            set { giro = value; }
        }

        [Property]
        public string Rut
        {
            get { return rut; }
            set { rut = value; }
        }

        [Property]
        public string BancoCuentaCorriente
        {
            get { return bancoCuentaCorriente; }
            set { bancoCuentaCorriente = value; }
        }

        [Property]
        public string CuentaCorriente
        {
            get { return cuentaCorriente; }
            set { cuentaCorriente = value; }
        }

        [Property]
        public string Contacto
        {
            get { return contacto; }
            set { contacto = value; }
        }

        [Property]
        public string Mail
        {
            get { return mail; }
            set { mail = value; }
        }

        [Property]
        public string Telefono
        {
            get { return telefono; }
            set { telefono = value; }
        }

        [Property]
        public string Direccion
        {
            get { return direccion; }
            set { direccion = value; }
        }

        [Property]
        public string RazonSocial
        {
            get { return razonSocial; }
            set { razonSocial = value; }
        }

        [PrimaryKey]
        public int Id
        {
            get { return id; }
            set { id = value; }
        }

    }
}
